home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Borland / Borland C++ V5.02 / APPEXPRT.PAK / REGISTRY.SNP < prev    next >
Text File  |  1997-05-06  |  3KB  |  86 lines

  1. ##--BEGIN-- @OPT_APPL_REGISTRY
  2. ##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
  3. //--------------------------------------------------------
  4. // [[TApplication]]
  5. // ~~~~~
  6. // Process command line parameters.
  7. //
  8. ##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
  9. void [[TApplication]]::ProcessCmdLine(char * CmdLine)
  10. {
  11.   TCmdLine cmd(CmdLine);
  12.  
  13.   while (cmd.Kind != TCmdLine::Done) {
  14.     if (cmd.Kind == TCmdLine::Option) {
  15.       if (strnicmp(cmd.Token, "unregister", cmd.TokenLen) == 0) {
  16.         UnRegisterInfo();
  17.         return;
  18.       }
  19.     }
  20.     cmd.NextToken();
  21.   }
  22.  
  23.   RegisterInfo();
  24. }
  25.  
  26.  
  27. ##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
  28. //--------------------------------------------------------
  29. // [[TApplication]]
  30. // ~~~~~
  31. // Register application info.
  32. //
  33. ##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
  34. void [[TApplication]]::RegisterInfo()
  35. {
  36.   TAPointer<char> buffer = new char[_MAX_PATH];
  37.  
  38.   GetModuleFileName(buffer, _MAX_PATH);
  39.  
  40. ##@QUERY_TARGET_NAME [[Target]]
  41.   TRegKey(TRegKey::ClassesRoot, "[[Target]].Application\\DefaultIcon").SetDefValue(0, REG_SZ, buffer, strlen(buffer));
  42.   strcat(buffer, ",1");
  43. ##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
  44. ##@QUERY_TARGET_NAME [[Target]] 2
  45.   TRegKey(TRegKey::ClassesRoot, "[[Target]].Document.1\\DefaultIcon").SetDefValue(0, REG_SZ, buffer, strlen(buffer));
  46.   strcpy(buffer, "[[Target]].Document.1");
  47. ##OPT_DV_RESET
  48. ##OPT_DV_NEXT
  49. ##@QUERY_DV_EXT [[Ext]]
  50.   TRegKey(TRegKey::ClassesRoot, ".[[Ext]]").SetDefValue(0, REG_SZ, buffer, strlen(buffer));
  51. ##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
  52. }
  53.  
  54.  
  55. ##--BEGIN-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
  56. //--------------------------------------------------------
  57. // [[TApplication]]
  58. // ~~~~~
  59. // Unregister application info.
  60. //
  61. ##--END-- @QUERY_APPL_COMMENT == VALUE_VERBOSE
  62. void [[TApplication]]::UnRegisterInfo()
  63. {
  64.   TAPointer<char> buffer = new char[_MAX_PATH];
  65.  
  66.   GetModuleFileName(buffer, _MAX_PATH);
  67.  
  68. ##@QUERY_TARGET_NAME [[Target]] 4
  69.   TRegKey(TRegKey::ClassesRoot, "[[Target]].Application").DeleteKey("DefaultIcon");
  70.   TRegKey(TRegKey::ClassesRoot, "[[Target]].Document.1").DeleteKey("DefaultIcon");
  71.  
  72.   TRegKey::ClassesRoot.DeleteKey("[[Target]].Application");
  73. ##--BEGIN-- @QUERY_APPL_MODEL != VALUE_DIALOG
  74. ##@QUERY_TARGET_NAME [[Target]]
  75.   TRegKey::ClassesRoot.DeleteKey("[[Target]].Document.1");
  76. ##OPT_DV_RESET
  77. ##OPT_DV_NEXT
  78. ##@QUERY_DV_EXT [[Ext]]
  79.   TRegKey::ClassesRoot.DeleteKey(".[[Ext]]");
  80. ##--END-- @QUERY_APPL_MODEL != VALUE_DIALOG
  81. }
  82.  
  83.  
  84. ##--END-- @OPT_APPL_REGISTRY
  85.  
  86.